From bb8e388c628a3586ddc45f6c51600346a15f1d7d Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Tue, 24 Sep 2013 00:16:38 -0700 Subject: [PATCH] * dispnew.c (clear_glyph_row, copy_row_except_pointers): Prefer signed to unsigned integers where either will do. No need for 'const' on locals that do not escape. Omit easserts with unnecessary and unportable assumptions about alignment. Avoid unnecessary casts to char *. --- src/ChangeLog | 8 ++++++++ src/dispnew.c | 10 ++++------ 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/src/ChangeLog b/src/ChangeLog index 19993be94f1..7406b1e9ec4 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,11 @@ +2013-09-24 Paul Eggert + + * dispnew.c (clear_glyph_row, copy_row_except_pointers): + Prefer signed to unsigned integers where either will do. + No need for 'const' on locals that do not escape. + Omit easserts with unnecessary and unportable assumptions about + alignment. Avoid unnecessary casts to char *. + 2013-09-24 Dmitry Antipov Use union for the payload of struct Lisp_Vector. diff --git a/src/dispnew.c b/src/dispnew.c index f7e3fa54441..f9132f37f68 100644 --- a/src/dispnew.c +++ b/src/dispnew.c @@ -838,11 +838,10 @@ clear_window_matrices (struct window *w, bool desired_p) void clear_glyph_row (struct glyph_row *row) { - const size_t off = offsetof (struct glyph_row, used); + int off = offsetof (struct glyph_row, used); - eassert (off == sizeof row->glyphs); /* Zero everything except pointers in `glyphs'. */ - memset ((char *) row + off, 0, sizeof *row - off); + memset (row->used, 0, sizeof *row - off); } @@ -989,10 +988,9 @@ swap_glyph_pointers (struct glyph_row *a, struct glyph_row *b) static void copy_row_except_pointers (struct glyph_row *to, struct glyph_row *from) { - const size_t off = offsetof (struct glyph_row, x); + int off = offsetof (struct glyph_row, x); - eassert (off == sizeof to->glyphs + sizeof to->used + sizeof to->hash); - memcpy ((char *) to + off, (char *) from + off, sizeof *to - off); + memcpy (&to->x, &from->x, sizeof *to - off); } -- 2.30.2